-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Move Handshake and Aux Chain out of Opgroups #10
base: pulp
Are you sure you want to change the base?
Conversation
0d38031
to
f813f4e
Compare
f813f4e
to
e1caa72
Compare
I now added an aux chain module for the division operation as well, and refactored the commits so that there are fewer changes. TestingI wrote some new tests which mix different operations in both vectorial and non-vectorial form.
As said before the vector div into normal div double output bug got solved. The TH32 Division Opgroup no properly synchronisez with unit width > 32. Previously this configuration did not synchronize but also had no guard clause. SynthesisI ran synthesis with the R5SCY Configuration:
Synthesis scripts are internally available in gitlab and results can be found under |
…potential cases where a bitflip causes a stall due to activating a division lane that does not exist.
58bc552
to
7a7fc6f
Compare
Removes the Handshake from all full throughput Opgroups and places it in it's own module.
Primarily this is a prerequisite for subsequent PR for redundant operations as otherwise the Lane Handshakes are statefull
and can get out of sync when faults occurr.
Secundarily this also fixes a bug where if a Vector Division is followed by a Normal Division the Vector division is output twice.
(Check vector tb in internal git lab).
Outside functionality / area / critical path stays the same appart from the bugfix.
Effects in depdencies:
Draft until further testing and discussion about aux module for division (will most likely be needed for redundant operation).